String Range

std::string::substring()을 호출할 때, 반환되는 부분 문자열은 생성되어 반환되는 문자열인지 알 수 없다.
Swift, Rust 등의 프로그래밍 언어에서는 부분 문자열을 리턴할 때, 명시적으로 그 범위를 리턴한다.
(위와 같이 부분 문자열을 리턴하면, 사용자가 직업 문자열을 수정할 수 있으며, 메모리를 절약할 수 있는
플라이 웨이트 패턴이다.)

C++에서 string_view를 이용해서 부분 문자열의 범위를 제공할 수 있다.